IF exists(SELECT * FROM dbo.sysobjects WHERE name='vk_groepsGemiddeldeProcent' AND xtype='P') 
BEGIN
	DROP PROCEDURE vk_groepsGemiddeldeProcent
END
GO

CREATE         PROCEDURE vk_groepsGemiddeldeProcent(
@klas varchar(5),
@periode char(2))
as
set nocount on
declare @hulptabel table(vak char(2),inschrijvingsNr char(7),code varchar(20),maximum float,cijfer float)

insert into @hulptabel
select vc.vak,vc.inschrijvingsnr,vc.code,vc.maximum,vc.cijfer 
  from vakrapportCollectieveRekenwijze as vir
  left join vakrapportCijferresultaten as vc
	on vc.code = vir.code and
	   vc.klas = vir.groepscode and
	    vc.vak =vir.vak and
	     vc.periode = vir.periode	
where vir.klas = @klas and
	vir.periode = @periode and
	  vir.rekenwijze = 'groepsgemiddeldeProcent' and 
      	    vc.cijfer >=0 and 
              vc.maximum > 0

insert into vakrapportCollectiefBerekend(klas,vak,periode,code,cijfer)
select @klas,r.vak,@periode,r.code + 'gem',convert(varchar(10),round(sum(cijfer)*100/sum(maximum),0))  
  from @hulptabel as c
    left join vakrapportCollectieveRekenwijze as r
   	on r.Code = c.code
	  and r.vak = c.vak
	   and r.periode = @periode
where r.klas = @klas and
	r.periode = @periode and
	  r.rekenwijze = 'groepsgemiddeldeProcent'
group by r.vak,r.code